package com.wei.czz.framework.admin.service;

import com.wei.czz.framework.admin.entity.UserAccessTokenEntity;

import java.util.List;

/**
 * Created by IntelliJ IDEA.
 *
 * @author wei
 * date: 2025-04-08 21:23:32
 * className: UserAccessTokenService
 * version: 1.0
 * description:
 */
public interface UserAccessTokenService {

    /**
     * 保存或编辑用户令牌操作
     *
     * @param userAccessToken 用户令牌对象
     */
    void saveOrEdit(UserAccessTokenEntity userAccessToken);

    /**
     * 获取用户有效访问令牌操作
     *
     * @param userId  用户主键
     * @param channel 登录渠道
     * @return 用户令牌对象列表
     */
    List<UserAccessTokenEntity> findEffectList(Long userId, Integer channel);

    /**
     * 清除其他令牌操作
     *
     * @param userId       用户主键
     * @param channel      登录渠道
     * @param refreshToken 刷新令牌
     */
    void clearOther(Long userId, Integer channel, String refreshToken);
}

